<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 1、 3 + 2 +“7”的结果是什么？3 + (2 + "7")的结果又是什么？这两个表达式输出的值是什么类型？
答 57  327 字符串
        // 2、6 - false的结果是什么？
        6
        // 3、6 - "false"和6 + "false"的结果分别是什么？结果输出值是什么数据类型？
NaN  number 6false  字符串
        // 4、请分析console.log(1 + - + + + - + 1)的结果？
        2
        // 5、下面代码分别输出什么？前自增(自减)与后自增(自减)的区别？
        // let a = 1;
        // let b = ++a + ++a;
        // console.log(b);
        5
        前自增
        // let a = 1;
        // let b = a++ + a++;
        // console.log(b);
        3
        后自增
        在自身基础上去 + 1 分为前置和后置
        前置：运算符先自增 再使用
        后置：运算符先使用 再计算自增
        // 6、分析下面代码，请问 j 和 y 分别是多少？(不要运行代码，自己分析后写出答案)
        // var i = 100;
        // i++;
        j = i++;
        y = ++j
        console.log(y)//102
        console.log(j)//102
        // 7、JS中哪些值通过Boolean对象转换出来的值为`false`?
        布尔值 false ''（空字符串）0和NaN null undefined
        // 8、分析下面代码的结果并解释原因。
        // let a = 1;
        // let b = 2;

        // console.log(a && b);
        2 没有假取最大值
        只有当所以运算都为真 该运算结果才能为真{ 找假过程 }
        // console.log(a || b);
        1 找真第一个就是
        表示其中一个为真时 结果就为真 只有当所以条件都为假时 结果才算假（找真的过程）e
        // 9、以下代码输出的结果分别是什么？
        // let a = true && "" && 12306;
        // let b = false || "" || undefined || "bluej" || 12306;
        // console.log(a);
        // console.log(b);
        答1, filse 空白
        2. true  bluej

        // 10、分析下面代码，分别输出什么？(以注释形式写在console.log后面)
        // let str = "12306";
        // let str1 = 1;
        // let num = 12306;
        // let boo = true;

        // console.log(str == num); 值相同      //true
        // console.log(str === num); 字符串和数字不同 不是全等      //filse
        // console.log(str1 == boo); true和1是相同值     //ture
        // console.log(str1 === boo); 表达方式不同     //filse


        // 提高题，非必做

        // - 写出执行结果,并解释原因

        var company = {
            address: 'beijing'
        }
        var yideng = Object.create(company);
        delete yideng.address
        console.log(yideng.address);

        // - 写出执行结果,并解释原因

        var x = 1;
        if (function f() { }) {
            x += typeof f;
        }
        console.log(x)
    </script>
</body>

</html>